home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Software Vault: The Gold Collection
/
Software Vault - The Gold Collection (American Databankers) (1993).ISO
/
cdr11
/
nr3_tech.zip
/
CONMEM.TXT
< prev
next >
Wrap
Text File
|
1993-06-18
|
3KB
|
74 lines
The importance of total memory vs. conventional memory.
A common misconception is that the goal of a memory manager
is simply to get the most conventional memory. Although an
important aspect of memory management, this is only part of
the story.
A memory manager's true goal is to provide the most
available memory below 1mb, while sacrificing the least in
performance. (Conventional memory is important because, of
course, without enough of it many applications won't run at
all.) In this respect, the more upper memory the memory
manager can provide, the more device drivers can be loaded
high by a configurator, and so more conventional memory is
available.
High-level language programs can use upper memory.
However in a configuration in which every device is already
loaded into upper memory, having a substantial amount of
upper memory still free is advantageous. This is because
most programs written today are developed using higher level
languages such as C that rely heavily on libraries supplied
with the compiler.
These libraries almost invariably perform memory allocation
on behalf of the program, and allocate memory using standard
DOS calls. Thus if upper memory is available it can be
allocated and used for data storage.
Using the LH command to breath new life into older programs.
Even programs written before the advent of DOS 5 -- programs
which are not aware of the DOS 5 API for accessing upper
memory -- can be easily allowed to use upper memory by
simply loading them with the LH command. LH (LOADHIGH) will
place a program in the smallest memory block that will hold
all the programs code, but will make available all other
memory, both conventional and upper as one large pool.
For application programs this means that the program code
will load in conventional memory, but ALL available memory
is linked and made accessible. Compilers will run faster,
you'll be able to create larger spreadsheets and documents
and all programs will run faster.
Windows makes heavy use of upper memory.
And if you use Windows the upper memory available is
extremely important. Windows uses upper memory to its
fullest, allocating larger translation buffers and more
space for such structures as "call backs" and "global memory
areas" in upper memory. Having a large pool of upper memory
available is key to better Windows performance.
When Windows is forced to use conventional memory, such as
when upper memory is filled by an EMS page frame and drivers
and TSRs, Windows becomes conservative, allocating only just
enough to get by on. If on the other hand, lots of upper
memory is available Windows takes it all and uses it.
This makes it possible to run larger DOS applications, but
also makes ALL of Windows work faster and more reliably.
So look for the memory manager that provides the most TOTAL
memory below 1Mb.
And if you use Windows, look for the memory manager that can
provide the most upper memory period.
Copyright (c) 1993, Helix Software Co., Inc.